
from langgraph_supervisor import create_supervisor

from .planner import planner
from .researcher import researcher
from .analyzer import analyzer
from .critic import critic
from .synthesizer import synthesizer

from core.llm import llm
from core.agents.plan.prompts import supervise_prompt


def build_plan_team_graph():
    plan_team = create_supervisor(
        [
            planner,
            researcher,
            analyzer,
            critic,
            synthesizer
         ],
        model=llm,
        prompt=supervise_prompt,
        supervisor_name="SequentialThinkingTeam",
    )
    plan_team = plan_team.compile()
    return plan_team
